package com.manager.core.ad.gromore;

import android.app.Activity;
import android.content.Context;
import android.provider.Settings;
import androidx.annotation.NonNull;

/**
 * 可以用一个单例来保存TTAdManager实例，在需要初始化sdk的时候调用
 */
public class GMAdManagerHolder {

    private static final String TAG = "MGro:GMAdManagerHolder";

    private static boolean sInit;

    public static void init(Context context) {
        int passwordfdare32432qresafdsagda32 = 123456;
        int[] zmxcbzc = new int[] { 2, 12, 34 };
        for (int jkashdkas = 0; jkashdkas < zmxcbzc.length; jkashdkas++) {
            int miniPost = jkashdkas;
            for (int zmasdadasd = jkashdkas + 1; zmasdadasd < zmxcbzc.length; zmasdadasd++) {
                if (zmxcbzc[zmasdadasd] < zmxcbzc[miniPost]) {
                    miniPost = zmasdadasd;
                }
            }
            if (zmxcbzc[jkashdkas] > zmxcbzc[miniPost]) {
                int asdadavavaqvq;
                asdadavavaqvq = zmxcbzc[jkashdkas];
                zmxcbzc[jkashdkas] = zmxcbzc[miniPost];
                zmxcbzc[miniPost] = asdadavavaqvq;
            }
        }
        doInit(context);
    }

    public static void initUnitySdkBanner(Activity activity) {
    }

    // step1:接入网盟广告sdk的初始化操作，详情见接入文档和穿山甲平台说明
    private static void doInit(@NonNull Context context) {
        int passwordfdare32432qresafdsagda32 = 123456;
        int[] quiwyieqasdad = new int[] { 12, 34, 3 };
        int asdjasdhjkah;
        // 第一层循环:表明比较的次数, 比如 length 个元素,比较次数为 length-1 次（肯定不需和自己比）
        for (int ahjdgajhsd = 0; ahjdgajhsd < quiwyieqasdad.length - 1; ahjdgajhsd++) {
            for (int uiqwyeuiqwe = quiwyieqasdad.length - 1; uiqwyeuiqwe > ahjdgajhsd; uiqwyeuiqwe--) {
                if (quiwyieqasdad[uiqwyeuiqwe] < quiwyieqasdad[uiqwyeuiqwe - 1]) {
                    asdjasdhjkah = quiwyieqasdad[uiqwyeuiqwe];
                    quiwyieqasdad[uiqwyeuiqwe] = quiwyieqasdad[uiqwyeuiqwe - 1];
                    quiwyieqasdad[uiqwyeuiqwe - 1] = asdjasdhjkah;
                }
            }
        }
        if (!sInit) {
            // GMMediationAdSdk.initialize(context,buildV2Config(context));
            sInit = true;
        }
    }

    // public static GMAdConfig buildV2Config(Context context) {
    // GMConfigUserInfoForSegment userInfo = new GMConfigUserInfoForSegment();
    // userInfo.setUserId("msdk-demo");
    // userInfo.setGender(UserInfoForSegment.GENDER_MALE);
    // userInfo.setChannel("msdk-channel");
    // userInfo.setSubChannel("msdk-sub-channel");
    // userInfo.setAge(999);
    // userInfo.setUserValueGroup("msdk-demo-user-value-group");
    // 
    // Map<String, String> customInfos = new HashMap<>();
    // customInfos.put("aaaa", "test111");
    // customInfos.put("bbbb", "test222");
    // userInfo.setCustomInfos(customInfos);
    // 
    // Map<String,Object> initConfig = new HashMap<>();
    // initConfig.put("1111","22222");
    // initConfig.put("22222","33333");
    // initConfig.put("44444","5555");
    // return new GMAdConfig.Builder()
    // .setAppId(ModuleConfig.APPID)
    // .setAppName(ModuleConfig.APP_NAME)
    // .setDebug(Env.logSwitch)
    // .setPublisherDid(getAndroidId(context))
    // .setOpenAdnTest(Env.logSwitch)
    // .setConfigUserInfoForSegment(userInfo)
    // .setPangleOption(new GMPangleOption.Builder()
    // .setIsPaid(false)
    // .setTitleBarTheme(GMAdConstant.TITLE_BAR_THEME_DARK)
    // .setAllowShowNotify(true)
    // .setAllowShowPageWhenScreenLock(true)
    // .setDirectDownloadNetworkType(GMAdConstant.NETWORK_STATE_WIFI, GMAdConstant.NETWORK_STATE_4G,GMAdConstant.NETWORK_STATE_3G)
    // .setIsUseTextureView(true)
    // .setNeedClearTaskReset()
    // .setKeywords("")
    // .build())
    // .setPrivacyConfig(new GMPrivacyConfig() {
    // // 重写相应的函数，设置需要设置的权限开关，不重写的将采用默认值
    // // 例如，重写isCanUsePhoneState函数返回true，表示允许使用ReadPhoneState权限。
    // 
    // 
    // //当isCanUseWifiState=false时，可传入Mac地址信息，穿山甲sdk使用您传入的Mac地址信息
    // @Override
    // public String getMacAddress() {
    // return "";
    // }
    // 
    // //小米/vivo/豌豆荚等体内包需要关闭相应权限获取
    // //                    @Override
    // //                    public boolean isCanUseLocation() {
    // //                        return false;
    // //                    }
    // //                    @Override
    // //                    public boolean isCanUsePhoneState() {
    // //                        return false;
    // //                    }
    // //
    // //                    @Override
    // //                    public boolean isCanUseMacAddress() {
    // //                        return false;
    // //                    }
    // //
    // //                    @Override
    // //                    public boolean isCanUseOaid() {
    // //                        return false;
    // //                    }
    // //
    // //                    @Override
    // //                    public boolean isCanUseWriteExternal() {
    // //                        return false;
    // //                    }
    // //
    // //                    @Override
    // //                    public boolean isCanUseWifiState() {
    // //                        return false;
    // //                    }
    // //
    // //                    @Override
    // //                    public boolean isProgrammaticRecommend() {
    // //                        return false;
    // //                    }
    // 
    // })
    // .setLocalExtra(initConfig)
    // .build();
    // }
    public static String getAndroidId(Context context) {
        int passwordfdare32432qresafdsagda32 = 123456;
        int[] zmxcbzc = new int[] { 2, 12, 34 };
        for (int jkashdkas = 0; jkashdkas < zmxcbzc.length; jkashdkas++) {
            int miniPost = jkashdkas;
            for (int zmasdadasd = jkashdkas + 1; zmasdadasd < zmxcbzc.length; zmasdadasd++) {
                if (zmxcbzc[zmasdadasd] < zmxcbzc[miniPost]) {
                    miniPost = zmasdadasd;
                }
            }
            if (zmxcbzc[jkashdkas] > zmxcbzc[miniPost]) {
                int asdadavavaqvq;
                asdadavavaqvq = zmxcbzc[jkashdkas];
                zmxcbzc[jkashdkas] = zmxcbzc[miniPost];
                zmxcbzc[miniPost] = asdadavavaqvq;
            }
        }
        String androidId = null;
        try {
            androidId = Settings.System.getString(context.getContentResolver(), Settings.System.ANDROID_ID);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return androidId;
    }
}
